/**
 * This class represents the GameObserver Interface.
 * 
 * @author (Dilyan GEORGIEV)
 * @author (Thomas KOBER)
 * @author (Matthew MCDONALD)
 * 
 * @version (1.0)
 */
public interface GameObserver  
{
    /**
     * Handle the Players increase in Cost (= Travel Expenses).
     */
    public void handleCostIncrease();
    
    /**
     * Handle the Player making a move with the Salesman.
     */
    public void handlePlayerMoved();
    
    /**
     * Handle the Player reaching a Goal Planet.
     */
    public void handlePlayerReachedGoalPlanet();
    
    /**
     * Handle the Player selecting a difficulty.
     * @param difficulty the selected difficulty.
     */
    public void handleDifficultySelected(Difficulty difficulty);
    
    /**
     * Handle the Player selecting to play again.
     */
    public void handlePlayAgainSelected();
    
    /**
     * Handle the Player selecting not to play again.
     */
    public void handleGiveUpSelected();
}
